Kanzi 3.9.10
ObjectRef< ObjectType extends KanziObject > Class Template Reference

The ObjectRef class is used to store an owning reference to a com.rightware.kanzi.KanziObject instance. More...

Inheritance diagram for ObjectRef< ObjectType extends KanziObject >:
[legend]

Public Member Functions

 ObjectRef (ObjectType object)
 Create an owning reference to the provided com.rightware.kanzi.KanziObject instance.
 
ObjectRef< ObjectTypeclone ()
 Creates a new ObjectRef instance that refers to the same Kanzi Object.
 
void close ()
 Close the ObjectRef instance.
 
ObjectType get ()
 Get the com.rightware.kanzi.KanziObject derived type that is owned by this ObjectRef.
 

Detailed Description

The ObjectRef class is used to store an owning reference to a com.rightware.kanzi.KanziObject instance.

The lifetime of the referred object is at least as long as the objectRef instance.

Calling the close method is highly recommended, most instances should be part of a try-with-resources block to ensure that the close method is automatically called when the variable goes out of scope.

Parameters
<ObjectType>The com.rightware.kanzi.KanziObject derived type that is owned by this ObjectRef.

Constructor & Destructor Documentation

◆ ObjectRef()

ObjectRef ( ObjectType object)

Create an owning reference to the provided com.rightware.kanzi.KanziObject instance.

Parameters
objectObject that is owned by this ObjectRef.

Member Function Documentation

◆ clone()

ObjectRef< ObjectType > clone ( )

Creates a new ObjectRef instance that refers to the same Kanzi Object.

This increases the native reference count for the object. The original and created ObjectRef instances are both required to be closed independently.

◆ close()

void close ( )

Close the ObjectRef instance.

If no other references exist to the underlying com.rightware.kanzi.KanziObject it is reclaimed.

◆ get()

ObjectType get ( )

Get the com.rightware.kanzi.KanziObject derived type that is owned by this ObjectRef.

Returns
The Kanzi Object.